upgrading can break you and provide breakthroughs

Upgrading to the latest GitLab. The lesson, read the release notes. Seeing that they made changes to the NFS system should have been worrying. They broke the way I published.

But, this led to a great new breakthrough. Now, I can publish into multiple sites.

To do this, setup Minio. You can then get GitLab to post archive.zip files from pages into Minio (or any S3 compatible storage).

Then, setup notifications. I used Redis, but you can use whatever you want. I tried to get a NodeJS script which would monitor the notifications via PubSub but nothing worked.

I ended up making a script that calls redis-cli and watches the output and then takes action on certain events. Make sure Redis is behind the firewall (in my case I’m using it inside a wireguard container, and it is only exposed locally).

Make sure you filter the events and don’t use everything. A Put event is what you want. If you listed to all events, the Get event when you download the file will trigger your script, and you will see an endless loop!

Then, pull the file, unzip it and put it where you want.

This means I completely decoupled from having GitLab on the pages server side. Now, I can do what I always wanted to, and connect multiple redis monitoring scripts from any server to pull the files. 

--